package com.zyd.service.vehicle;

import com.zyd.io.model.BlackCarEntity;
import com.zyd.io.model.VehicleEntity;
import com.zyd.io.vo.page.MultiQueryPageVO;
import com.zyd.io.vo.vehicle.*;
import com.zyd.io.page.PageBean;
import org.apache.poi.ss.usermodel.Workbook;

import java.util.List;
import java.util.Map;

public interface VehicleService {

    public PageBean<VehicleEntity> findVehiclePage(MultiQueryPageVO request);

    public VehicleEntity findVehicle(String id);

    public void addVehicle(VehicleEntity vehicle);

    public void updateVehicle(VehicleEntity vehicle);

    public void deleteVehicle(String id);

    public  void importData(Workbook workbook);

    public List<VehicleTrackResVO> findVehicleTrack(VehicleTrackReqVO request);

    public PageBean<VehicleRecordResVO> findVehicleRecord(VehicleRecordReqVO request);

    public PageBean<Map<String, Object>> countFees(FeeReqVO reqVO);

    public List<VehicleEntity> findVehicleList(String userid);

    public PageBean<Map<String, Object>> findRegisterVehiclePage(MultiQueryPageVO request);
    public List<VehicleEntity> findVehicleByReger(String reger);

    List<VehicleEntity> findVehicleList(MultiQueryPageVO vehicleExcelParam, String userid);
    public PageBean<Map<String, Object>> appletFindPage(MultiQueryPageVO request);

    /**
     * 查询审核车辆
     * @param multiQueryPageVO
     * @return
     */
    PageBean examineVehicleList(MultiQueryPageVO multiQueryPageVO);

    /**
     * 修改车辆审核状态
     * @param id
     * @param state 改为1为审核通过  改为2为审核未通过
     */
    void updateExamineVehicle(String id, Integer state);

    /**
     * 状态改为是删除
     * @param id
     */
    void deleteExamine(String id);
}
